package com.lc.controller.utils;

import com.sun.org.apache.bcel.internal.classfile.Code;
import org.omg.CORBA.SystemException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

//作为springmvc的异常处理器
//@ControllerAdvice
@RestControllerAdvice
public class ProjectExceptionAdvice
{
	//拦截所有的异常信息
	@ExceptionHandler(Exception.class)
	public R doException(Exception ex)
	{
		//记录日志
		//通知运维
		//通知开发
		ex.printStackTrace();
		return new R("服务器故障，请稍后再试！");
	}
	
//	@ExceptionHandler(SystemException.class)
//	public Result doSystemException(SystemException ex)
//	{
//		//记录日志
//		//发送消息给运维
//		//发送邮件给开发人员,ex对象发送给开发人员
//		return new Result(ex.getCode(), null, ex.getMessage());
//	}
//
//	@ExceptionHandler(BusinessException.class)
//	public Result doBusinessException(BusinessException ex)
//	{
//		return new Result(ex.getCode(), null, ex.getMessage());
//	}
//
//	@ExceptionHandler(Exception.class)
//	public Result doOtherException(Exception ex)
//	{
//		//记录日志
//		//发送消息给运维
//		//发送邮件给开发人员,ex对象发送给开发人员
//		return new Result(Code.SYSTEM_UNKNOW_ERR, null, "系统繁忙，请稍后再试！");
//	}
}
